package com.jjyu.service.impl;

import com.jjyu.entity.Feedback;
import com.jjyu.dao.FeedbackMapper;
import com.jjyu.service.FeedbackService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime;

@Service
public class FeedbackServiceImpl extends ServiceImpl<FeedbackMapper, Feedback> implements FeedbackService {

    @Autowired
    private FeedbackMapper feedbackMapper;

    // 实现接口中的方法，例如根据用户ID获取反馈列表等
    @Override
    @Transactional
    public boolean save(Feedback feedback) {
        // 在这里可以添加一些验证逻辑，例如检查评分是否在1到5之间
        if (feedback.getRating() < 1.0 || feedback.getRating() > 5.0) {
            throw new IllegalArgumentException("Rating must be between 1 and 5");
        }
        // 可以添加更多的业务逻辑，比如设置创建时间和更新时间
        feedback.setCreatedAt(LocalDateTime.now()); // 获取当前时间
        feedback.setUpdatedAt(LocalDateTime.now()); // 获取当前时间
        // 使用MyBatis Plus的save方法保存实体
        return super.save(feedback);
    }
}